\section{fsm\+\_\+slave\+\_\+scan.\+c File Reference}
\label{fsm__slave__scan_8c}\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}


Ether\+C\+AT slave state machines.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: S\+T\+A\+RT. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: A\+D\+D\+R\+E\+SS. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: S\+T\+A\+TE. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: B\+A\+SE. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: DC C\+A\+P\+A\+B\+I\+L\+I\+T\+I\+ES. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: DC T\+I\+M\+ES. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: D\+A\+T\+A\+L\+I\+NK. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: S\+II S\+I\+ZE. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: S\+II D\+A\+TA. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: P\+R\+E\+OP. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: S\+Y\+NC. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan state\+: P\+D\+OS. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em State\+: E\+ND. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em State\+: E\+R\+R\+OR. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Slave scan entry function\+: D\+A\+T\+A\+L\+I\+NK. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Enter slave scan state P\+R\+E\+OP. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Enter slave scan state P\+D\+OS. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm, \textbf{ ec\+\_\+datagram\+\_\+t} $\ast$datagram, \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+config\+\_\+t} $\ast$fsm\+\_\+slave\+\_\+config, \textbf{ ec\+\_\+fsm\+\_\+pdo\+\_\+t} $\ast$fsm\+\_\+pdo)
\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm, \textbf{ ec\+\_\+slave\+\_\+t} $\ast$slave)
\begin{DoxyCompactList}\small\item\em Start slave scan state machine. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running} (const \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\item 
int \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Executes the current state of the state machine. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success} (const \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\item 
void \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size} (\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$fsm)
\begin{DoxyCompactList}\small\item\em Enter slave scan state S\+I\+I\+\_\+\+S\+I\+ZE. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Ether\+C\+AT slave state machines. 



\subsection{Function Documentation}
\mbox{\label{fsm__slave__scan_8c_a01d55ef95cfd9a04abfd949790820743}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+start (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: S\+T\+A\+RT. 

First state of the slave state machine. Writes the station address to the slave, according to its ring position. 
\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 174 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_abe0ecde5ce1983b239e2da3b481e8dce}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+address (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: A\+D\+D\+R\+E\+SS. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 189 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a7d291ff3d71a437adbe788f34a08ceb7}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+state (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: S\+T\+A\+TE. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 227 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a55dd4ea96a7cbf72cd23b0303f58ecb9}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+base (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: B\+A\+SE. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 271 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ab9a1c7e217c1b92f7465067dde64aacb}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+cap (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: DC C\+A\+P\+A\+B\+I\+L\+I\+T\+I\+ES. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 345 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a9c82c04700224f13a983264beab8d7f6}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+dc\+\_\+times (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: DC T\+I\+M\+ES. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 390 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a8bcfc5f5a8c67418625ea01664b85130}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+datalink (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: D\+A\+T\+A\+L\+I\+NK. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 490 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a539ce44be83455b1651c29da7357f483}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+size (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: S\+II S\+I\+ZE. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 578 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ac1d34306750a2c345bb81b4d795427c0}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sii\+\_\+data (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: S\+II D\+A\+TA. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 650 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a45a7dff65d10e03da84754eb73be7d85}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+preop (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: P\+R\+E\+OP. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 907 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ab25422fd2748169ea2fc8827137d1cbf}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+sync (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: S\+Y\+NC. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 926 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ab38334b5c2095e952b5e76906f70658a}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+pdos (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan state\+: P\+D\+OS. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 988 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a3baaae371ddb7a305d1d37b7b9175604}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+end (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



State\+: E\+ND. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 1021 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ae1fc71bdea10b2c4d4d1a24c67d14915}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+state\+\_\+error (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



State\+: E\+R\+R\+OR. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 1011 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a3357ab75dcccf4f03ce2621de48044d9}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+datalink (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Slave scan entry function\+: D\+A\+T\+A\+L\+I\+NK. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 429 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_aecfeac1eba1a56c496c9e41399695cfb}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+preop (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Enter slave scan state P\+R\+E\+OP. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 869 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a8175ccbe5743b4a7e3c3450122ecb70d}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+pdos (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Enter slave scan state P\+D\+OS. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 972 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a8cc2c3a15907436ab5261917eac11368}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+init (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm,  }\item[{\textbf{ ec\+\_\+datagram\+\_\+t} $\ast$}]{datagram,  }\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+config\+\_\+t} $\ast$}]{fsm\+\_\+slave\+\_\+config,  }\item[{\textbf{ ec\+\_\+fsm\+\_\+pdo\+\_\+t} $\ast$}]{fsm\+\_\+pdo }\end{DoxyParamCaption})}



Constructor. 


\begin{DoxyParams}{Parameters}
{\em fsm} & Slave scanning state machine. \\
\hline
{\em datagram} & Datagram to use. \\
\hline
{\em fsm\+\_\+slave\+\_\+config} & Slave configuration state machine to use. \\
\hline
{\em fsm\+\_\+pdo} & P\+DO configuration machine to use. \\
\hline
\end{DoxyParams}


Definition at line 79 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_abe0acf4f2239f98a2c64140d8239dbfe}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+clear (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Destructor. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 99 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a83f6387b6036e27b4ac97a992ec17367}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+start (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm,  }\item[{\textbf{ ec\+\_\+slave\+\_\+t} $\ast$}]{slave }\end{DoxyParamCaption})}



Start slave scan state machine. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
{\em slave} & slave to configure \\
\hline
\end{DoxyParams}


Definition at line 111 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ac672b3caec7befa075a341b2c2020cc3}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running()}
{\footnotesize\ttfamily int ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+running (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}

\begin{DoxyReturn}{Returns}
false, if state machine has terminated 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 126 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ac927c8c1c03764c0f9d86639968f3111}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec()}
{\footnotesize\ttfamily int ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+exec (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Executes the current state of the state machine. 

If the state machine\textquotesingle{}s datagram is not sent or received yet, the execution of the state machine is delayed to the next cycle. \begin{DoxyReturn}{Returns}
false, if state machine has terminated 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 141 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_ae24bf2f23955c4ab08862330f578c749}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success()}
{\footnotesize\ttfamily int ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+success (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}

\begin{DoxyReturn}{Returns}
true, if the state machine terminated gracefully 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 159 of file fsm\+\_\+slave\+\_\+scan.\+c.

\mbox{\label{fsm__slave__scan_8c_a92b43c9b40ef144ddd93bac1011fe6c2}} 
\index{fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}!ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size}}
\index{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size@{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size}!fsm\+\_\+slave\+\_\+scan.\+c@{fsm\+\_\+slave\+\_\+scan.\+c}}
\subsubsection{ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size()}
{\footnotesize\ttfamily void ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+enter\+\_\+sii\+\_\+size (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+slave\+\_\+scan\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Enter slave scan state S\+I\+I\+\_\+\+S\+I\+ZE. 


\begin{DoxyParams}{Parameters}
{\em fsm} & slave state machine \\
\hline
\end{DoxyParams}


Definition at line 447 of file fsm\+\_\+slave\+\_\+scan.\+c.

